/**
 * @description axios请求的封装
 */

const BASE_URL = 'http://139.9.177.51:3701'; // 接口请求的 URL
// const BASE_URL = 'http://127.0.0.1:3701'; // 接口请求的 URL
const axios = require('axios');
const local = require('./local');
// const weui = require('weui');
/**
 * 请求拦截器
 * 
 * 作用: 在每一次发送讲求的时候进行统一操作  如让后期每一个请求都带上token 令牌
 * 
 * 
*/
// axios.interceptors.request.use(res => { }, err = {})
// // 验证Authorization 访问所有api接口 必须有token值 有token值表示通过验证 才可以继续访问接口 
axios.interceptors.request.use(config => {
  let token = local.get('tn');
  if (token) {
    config.headers.Authorization = 'Bearer ' + token
  }
  // 在最后必须 return config
  return config
})


/* post请求 */
function post(url, data, callback) {
  axios.post(BASE_URL + url, data).then(res => {
    callback(res.data)
  }).catch(err => {
    callback(err)
  })
}

/*get请求*/
function get(url, callback) {
  axios.get(BASE_URL + url).then(res => {
    callback(res.data)
  }).catch(err => {
    callback(err)
  })
}

// function patch(url, data, callback) {
//   axios.patch(BASE_URL + url, data).then(res => {
//     callback(res.data)
//   }).catch(err => {
//     callback(err)
//   })
// }
/* 文件上传 */
// function uploadFile(url, fdKey, fdValue, token, success) {
//   const xhr = new XMLHttpRequest();

//   const fd = new FormData();
//   fd.append(fdKey, fdValue);

//   xhr.open('POST', BASE_URL + url);
//   xhr.onreadystatechange = function () {
//     if (xhr.readyState === 4 && xhr.status === 200) {
//       const resData = JSON.parse(xhr.responseText)
//       success(resData)
//     }
//   }
//   xhr.setRequestHeader('authorization', 'Bearer ' + token)
//   xhr.send(fd);


// }

/*登录状态判定*/
function isLogin() {
 if(!local.get('Info')){
   alert('请先登录账户');
   window.location.href='login.html'
 }
}
  // 封装单文件上传通用功能
  function uploadFile(fileKey,fileVal,url,sucess){
    // let file=this.files[0];  //取到用户选中的第一张图片
   
    // 定义一个FormData对象
    let fd=new FormData;
        //向对象中添加上传的图像并定义一个名字
        // 第一个file是服务端口，不能修改
    fd.append(fileKey,fileVal);
        // 发ajax
    let xhr=new XMLHttpRequest();
    //  地址需要补齐
    xhr.open('post',BASE_URL +url);
    xhr.onreadystatechange=function(){
            // 判定
        if(xhr.readyState==4&&xhr.status==200){
            // console.log(JSON.parse(xhr.response));
            // 获取上传的数据

               sucess(JSON.parse(xhr.response))
              
        }
    
    }
        xhr.send(fd);



  }





/* 导出 */
module.exports = {
  get,
  post,
  uploadFile,
  // patch,
  BASE_URL,
  isLogin,
  uploadFile
}
